Magnetic random access memory (MRAM) as well as other types of memory, can suffer corruption of data due to soft-errors, which are generally caused by random issues in operation. Such soft-errors may result in defects in MRAM cells and consequently cause erroneous operation. Some forms of MRAM include built in processes, such as error correcting codes (ECCs) to address such errors.
The maximum amount of errors that can be corrected by a process, such as an ECC, and the overhead (time, memory space and cost) of that ECC are generally a tradeoff. Therefore, there is always a need for further advancements in ECC usage.